1. Field of the Invention
The present invention relates to a packet transmission system for transmitting data packets to a mobile node, and to an apparatus and method for controlling a packet transmission route to the mobile node in the packet transmission system.
2. Description of the Related Art
FIG. 1 illustrates a conventional packet transmission network 200. The packet transmission network 200 comprises a network 220 having an arbitrary topology consisting of multiple nodes and links connecting the nodes. A router, which is a node existing in the network 220, stores the connection configuration of the node and the links (i.e., the topology) as route information under the routing control protocol, such as OSPF (open shortest path first). The router forwards a packet addressed to the other node exactly toward a direction in which the destination node exists.
The network 220 that routes a packet based on the IPv4 addressing architecture is hereinafter called an IPv4 packet transmission system 220. The conventional IPv4 packet transmission system 220 includes a mobile node (MN) 210 that communicates with other nodes while moving from one link to another link. The system 220 also includes a home agent (HA) 230 that provides a home link 231 to the mobile node 210, and access routers (AR) 240-1 through 240-4 that function as foreign agents and provide foreign links 241-1 through 241-4, respectively, each connectable to the mobile node 210. The mobile node 210 communicates with a counterpart correspondent node (CN) 250 in the system 220.
FIG. 2 illustrates the communication process of the conventional packet transmission network 200. The mobile node (MN) 210 has a home address (e.g., “10.0.0.3” used in the home link 231. If the mobile node 210 has moved into the foreign link 231-1 provided by the access router (AR) 240-1, as illustrated in FIG. 2, the access router 240-1 gives its own address “11.0.0.1”, as a c/o address (CoA), to the mobile node 210, which is a foreigner to the access router (or the foreign agent) 240-1 (Process A).
Having received the c/o address (CoA), the mobile node 210 requests the access router (AR) 240-1 to transmit a registration request (RR), which is a transmission route control packet, to the home agent (HA) 230 (Process B). An example of the registration request (RR) is illustrated in FIG. 3A, and the RR contains a data field called binding information in which the home address “10.0.0.3” of the mobile node 210 is recorded in combination with c/o address (CoA) “11.0.0.1”.
In response to the request from the mobile node 210, the access router (AR) 240-1 transmits the registration request (RR), informing the home agent (HA) 230 that the mobile node 210 is now located in the foreign link 231-1 and therefore the transmission route to this mobile mode 210 should be changed (Process C).
Having received the registration request (RR) from the access router (AR) 240-1, the home agent (HA) 230 enters the home address “10.0.0.3” and the c/o address (CoA) “11.0.0.1” contained in the registration request (RR) into the cache (Process D).
In this state, if the correspondent node (CN) 250 produces and transmits a packet addressed to the home address “10.0.0.3”, this packet is forwarded to the home agent (HA) 230 via the router (not shown) of the IPv4 packet transmission system 220 (Process E). An example of the packet is illustrated in FIG. 3B, which contains the home address “10.0.0.3” as a destination address.
Since the destination address “10.0.0.3” contained in the forwarded packet agrees with the address in the entry, the home agent (HA) 230 receives this packet, in place of the mobile node 210, and produces a packet with the c/o address “11.0.0.1” recorded in the entry as a destination address to forward the packet to the access router (AR) 240-1. The packet transmitted from the correspondent node (CN) 250 is stored in the payload of the newly produced packet, as illustrated in FIG. 3C. The technique for storing a packet in the payload of another packet is called “tunneling”, and the packet containing another packet in its payload is called a tunneling packet. The tunneling packet produced by the home agent (HA) 230 is forwarded to the access router (AR) 240-1 via a router (not shown) in the IPv4 packet transmission system 220 (Process F).
When the access router (AR) 240-1, which functions as a foreign agent, receives a tunneling packet addressed to the access router 240-1 itself, the packet is extracted from the payload of the tunneling packet. Then, the access router (AR) 240-1 transmits the extracted packet to the mobile node 210, attaching a link layer header containing the MAC (media access control) address of the mobile node 210 as a destination address (Process G).
By the way, when the mobile node 210 receives a packet addressed to itself at a foreign link 241-1, the mobile mode 210 can transmit a registration request (RR) to the correspondent node (CN) 250, which is the source terminal of the packet, via the access router (AR) 240-1 (Process H).
Upon receiving the registration request (RR), the correspondent node (CN) 250 enters the home address “10.0.0.3” and c/o address “11.0.0.1”, which is the address of the access router (AR) 240-1, contained in the registration request (Process I). Then, in order to further transmits a packet to the home address “10.0.0.3” of the mobile node 210, the correspondent node (CN) 250 produces a tunneling packet having the c/o address “11.0.0.1” of the access router (AR) 240-1 as a destination address in the header, and transmits this tunneling packet to the access router (AR) 240-1 (Process J).
Upon receiving the tunneling packet, the access router (AR) 240-1, which functions as a foreign agent, extracts the packet from the payload of the tunneling packet, as in Process G. The access router (AR) 240-1 then attaches a link layer header to the packet, which contains the MAC address of the mobile node 210 as a destination, and transmits this packet to the mobile node 210 (Process K).
The technique of transmitting a tunneling packet from the correspondent node (CN) 250 directly to the access router (AR) 240-1 without passing through the home agent (HA) 230 is called route optimization.
Then, every time the mobile node 210 moves to a new foreign link 241, it acquires a new c/o address (CoA), and transmits the home address and the acquired c/o address to both the home agent (HA) 230 and the correspondent node (CN) via the access router (AR) 240 providing that foreign link 241.
However, the above-described conventional packet transmission system 220 has a drawback in that a packet loss may occur when the mobile node 210 moves between foreign links 241 that are far away from the home agent (HA) 230 or the correspondent node (CN) 250. For example, when the mobile node 210 moves from a remote foreign link 241 to another foreign link 241, the packet transmitted from the home agent (HA) 230 or the correspondent node (CN) 250 is likely to be missed. This is because the packet is forwarded to the access router (AR) 240 of the former foreign link 241 in which the mobile node 210 is previously located before the registration request (RR) transmitted from the access router (AR) 240 of the new foreign link 241 reaches the home agent (HA) 230 or the correspondent node (CN) 250.